[INFO] fetching crate binper 0.1.4...
[INFO] fixing binper-0.1.4 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] extracting crate binper 0.1.4 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate binper 0.1.4
[INFO] finished tweaking crates.io crate binper 0.1.4
[INFO] tweaked toml for crates.io crate binper 0.1.4 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate binper 0.1.4 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate binper 0.1.4 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `scroll` dependency)
[INFO] [stderr] warning: `binper` (manifest) generated 1 warning
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded structopt v0.3.14
[INFO] [stderr]   Downloaded proc-macro-error-attr v1.0.2
[INFO] [stderr]   Downloaded scroll_derive v0.10.2
[INFO] [stderr]   Downloaded hermit-abi v0.1.13
[INFO] [stderr]   Downloaded structopt-derive v0.4.7
[INFO] [stderr]   Downloaded proc-macro-error v1.0.2
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded scroll v0.10.1
[INFO] [stderr]   Downloaded num-integer v0.1.42
[INFO] [stderr]   Downloaded proc-macro2 v1.0.17
[INFO] [stderr]   Downloaded ryu v1.0.4
[INFO] [stderr]   Downloaded serde_derive v1.0.111
[INFO] [stderr]   Downloaded serde_json v1.0.53
[INFO] [stderr]   Downloaded serde v1.0.111
[INFO] [stderr]   Downloaded syn v1.0.29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf
[INFO] running `Command { std: "docker" "start" "85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `scroll` dependency)
[INFO] [stderr] warning: `binper` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.17
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.29
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling libc v0.2.71
[INFO] [stderr]    Compiling serde v1.0.111
[INFO] [stderr]    Compiling ryu v1.0.4
[INFO] [stderr]     Checking unicode-width v0.1.7
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.2
[INFO] [stderr]    Compiling proc-macro-error v1.0.2
[INFO] [stderr]     Checking itoa v0.4.5
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]     Checking clap v2.33.1
[INFO] [stderr]     Checking chrono v0.4.11
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.111
[INFO] [stderr]    Compiling scroll_derive v0.10.2
[INFO] [stderr]     Checking scroll v0.10.1
[INFO] [stderr]    Compiling structopt-derive v0.4.7
[INFO] [stderr]     Checking structopt v0.3.14
[INFO] [stderr]     Checking serde_json v1.0.53
[INFO] [stderr]     Checking binper v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/pe.rs:10:44
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^--------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Serialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PE`
[INFO] [stdout] 11 | pub struct PE {
[INFO] [stdout]    |            -- `PE` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/pe.rs:10:55
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                                       ^----------
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       `Deserialize` is not local
[INFO] [stdout]    |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PE`
[INFO] [stdout] 11 | pub struct PE {
[INFO] [stdout]    |            -- `PE` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/header.rs:13:92
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]    |                                                                                            ^----------
[INFO] [stdout]    |                                                                                            |
[INFO] [stdout]    |                                                                                            `Deserialize` is not local
[INFO] [stdout]    |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Dos`
[INFO] [stdout] 14 | pub struct Dos {
[INFO] [stdout]    |            --- `Dos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/header.rs:74:92
[INFO] [stdout]    |
[INFO] [stdout] 74 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]    |                                                                                            ^----------
[INFO] [stdout]    |                                                                                            |
[INFO] [stdout]    |                                                                                            `Deserialize` is not local
[INFO] [stdout]    |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PE`
[INFO] [stdout] 75 | pub struct PE {
[INFO] [stdout]    |            -- `PE` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/header.rs:97:92
[INFO] [stdout]    |
[INFO] [stdout] 97 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]    |                                                                                            ^----------
[INFO] [stdout]    |                                                                                            |
[INFO] [stdout]    |                                                                                            `Deserialize` is not local
[INFO] [stdout]    |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_COFF`
[INFO] [stdout] 98 | pub struct COFF {
[INFO] [stdout]    |            ---- `COFF` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:133:92
[INFO] [stdout]     |
[INFO] [stdout] 133 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StandardFields`
[INFO] [stdout] 134 | pub struct StandardFields {
[INFO] [stdout]     |            -------------- `StandardFields` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:223:92
[INFO] [stdout]     |
[INFO] [stdout] 223 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SpecificFields`
[INFO] [stdout] 224 | pub struct SpecificFields {
[INFO] [stdout]     |            -------------- `SpecificFields` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:338:92
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DataDirectory`
[INFO] [stdout] 339 | pub struct DataDirectory {
[INFO] [stdout]     |            ------------- `DataDirectory` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:364:44
[INFO] [stdout]     |
[INFO] [stdout] 364 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DataDirectories`
[INFO] [stdout] 365 | pub struct DataDirectories {
[INFO] [stdout]     |            --------------- `DataDirectories` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:364:55
[INFO] [stdout]     |
[INFO] [stdout] 364 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DataDirectories`
[INFO] [stdout] 365 | pub struct DataDirectories {
[INFO] [stdout]     |            --------------- `DataDirectories` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:385:44
[INFO] [stdout]     |
[INFO] [stdout] 385 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Optional`
[INFO] [stdout] 386 | pub struct Optional {
[INFO] [stdout]     |            -------- `Optional` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:385:55
[INFO] [stdout]     |
[INFO] [stdout] 385 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Optional`
[INFO] [stdout] 386 | pub struct Optional {
[INFO] [stdout]     |            -------- `Optional` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:415:92
[INFO] [stdout]     |
[INFO] [stdout] 415 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Section`
[INFO] [stdout] 416 | pub struct Section {
[INFO] [stdout]     |            ------- `Section` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:456:44
[INFO] [stdout]     |
[INFO] [stdout] 456 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Sections`
[INFO] [stdout] 457 | pub struct Sections {
[INFO] [stdout]     |            -------- `Sections` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:456:55
[INFO] [stdout]     |
[INFO] [stdout] 456 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Sections`
[INFO] [stdout] 457 | pub struct Sections {
[INFO] [stdout]     |            -------- `Sections` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:474:44
[INFO] [stdout]     |
[INFO] [stdout] 474 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Headers`
[INFO] [stdout] 475 | pub struct Headers {
[INFO] [stdout]     |            ------- `Headers` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:474:55
[INFO] [stdout]     |
[INFO] [stdout] 474 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Headers`
[INFO] [stdout] 475 | pub struct Headers {
[INFO] [stdout]     |            ------- `Headers` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/pe/section.rs:7:92
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]   |                                                                                            ^----------
[INFO] [stdout]   |                                                                                            |
[INFO] [stdout]   |                                                                                            `Deserialize` is not local
[INFO] [stdout]   |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ImportDirectory`
[INFO] [stdout] 8 | pub struct ImportDirectory {
[INFO] [stdout]   |            --------------- `ImportDirectory` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/section.rs:37:44
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^--------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Serialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ImportDirectoryTable`
[INFO] [stdout] 38 | pub struct ImportDirectoryTable {
[INFO] [stdout]    |            -------------------- `ImportDirectoryTable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/section.rs:37:55
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                                       ^----------
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       `Deserialize` is not local
[INFO] [stdout]    |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ImportDirectoryTable`
[INFO] [stdout] 38 | pub struct ImportDirectoryTable {
[INFO] [stdout]    |            -------------------- `ImportDirectoryTable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/pe.rs:10:44
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^--------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Serialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PE`
[INFO] [stdout] 11 | pub struct PE {
[INFO] [stdout]    |            -- `PE` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/pe.rs:10:55
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                                       ^----------
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       `Deserialize` is not local
[INFO] [stdout]    |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PE`
[INFO] [stdout] 11 | pub struct PE {
[INFO] [stdout]    |            -- `PE` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/header.rs:13:92
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]    |                                                                                            ^----------
[INFO] [stdout]    |                                                                                            |
[INFO] [stdout]    |                                                                                            `Deserialize` is not local
[INFO] [stdout]    |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Dos`
[INFO] [stdout] 14 | pub struct Dos {
[INFO] [stdout]    |            --- `Dos` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/header.rs:74:92
[INFO] [stdout]    |
[INFO] [stdout] 74 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]    |                                                                                            ^----------
[INFO] [stdout]    |                                                                                            |
[INFO] [stdout]    |                                                                                            `Deserialize` is not local
[INFO] [stdout]    |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PE`
[INFO] [stdout] 75 | pub struct PE {
[INFO] [stdout]    |            -- `PE` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/header.rs:97:92
[INFO] [stdout]    |
[INFO] [stdout] 97 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]    |                                                                                            ^----------
[INFO] [stdout]    |                                                                                            |
[INFO] [stdout]    |                                                                                            `Deserialize` is not local
[INFO] [stdout]    |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_COFF`
[INFO] [stdout] 98 | pub struct COFF {
[INFO] [stdout]    |            ---- `COFF` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:133:92
[INFO] [stdout]     |
[INFO] [stdout] 133 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_StandardFields`
[INFO] [stdout] 134 | pub struct StandardFields {
[INFO] [stdout]     |            -------------- `StandardFields` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:223:92
[INFO] [stdout]     |
[INFO] [stdout] 223 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SpecificFields`
[INFO] [stdout] 224 | pub struct SpecificFields {
[INFO] [stdout]     |            -------------- `SpecificFields` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:338:92
[INFO] [stdout]     |
[INFO] [stdout] 338 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DataDirectory`
[INFO] [stdout] 339 | pub struct DataDirectory {
[INFO] [stdout]     |            ------------- `DataDirectory` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:364:44
[INFO] [stdout]     |
[INFO] [stdout] 364 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_DataDirectories`
[INFO] [stdout] 365 | pub struct DataDirectories {
[INFO] [stdout]     |            --------------- `DataDirectories` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:364:55
[INFO] [stdout]     |
[INFO] [stdout] 364 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_DataDirectories`
[INFO] [stdout] 365 | pub struct DataDirectories {
[INFO] [stdout]     |            --------------- `DataDirectories` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:385:44
[INFO] [stdout]     |
[INFO] [stdout] 385 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Optional`
[INFO] [stdout] 386 | pub struct Optional {
[INFO] [stdout]     |            -------- `Optional` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:385:55
[INFO] [stdout]     |
[INFO] [stdout] 385 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Optional`
[INFO] [stdout] 386 | pub struct Optional {
[INFO] [stdout]     |            -------- `Optional` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:415:92
[INFO] [stdout]     |
[INFO] [stdout] 415 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]     |                                                                                            ^----------
[INFO] [stdout]     |                                                                                            |
[INFO] [stdout]     |                                                                                            `Deserialize` is not local
[INFO] [stdout]     |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Section`
[INFO] [stdout] 416 | pub struct Section {
[INFO] [stdout]     |            ------- `Section` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:456:44
[INFO] [stdout]     |
[INFO] [stdout] 456 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Sections`
[INFO] [stdout] 457 | pub struct Sections {
[INFO] [stdout]     |            -------- `Sections` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:456:55
[INFO] [stdout]     |
[INFO] [stdout] 456 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Sections`
[INFO] [stdout] 457 | pub struct Sections {
[INFO] [stdout]     |            -------- `Sections` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:474:44
[INFO] [stdout]     |
[INFO] [stdout] 474 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                            ^--------
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            `Serialize` is not local
[INFO] [stdout]     |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Headers`
[INFO] [stdout] 475 | pub struct Headers {
[INFO] [stdout]     |            ------- `Headers` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/pe/header.rs:474:55
[INFO] [stdout]     |
[INFO] [stdout] 474 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]     |                                                       ^----------
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       `Deserialize` is not local
[INFO] [stdout]     |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Headers`
[INFO] [stdout] 475 | pub struct Headers {
[INFO] [stdout]     |            ------- `Headers` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/pe/section.rs:7:92
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Debug, PartialEq, Copy, Clone, Default, Pread, Pwrite, IOread, IOwrite, SizeWith, Deserialize)]
[INFO] [stdout]   |                                                                                            ^----------
[INFO] [stdout]   |                                                                                            |
[INFO] [stdout]   |                                                                                            `Deserialize` is not local
[INFO] [stdout]   |                                                                                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ImportDirectory`
[INFO] [stdout] 8 | pub struct ImportDirectory {
[INFO] [stdout]   |            --------------- `ImportDirectory` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/section.rs:37:44
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                            ^--------
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            `Serialize` is not local
[INFO] [stdout]    |                                            move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ImportDirectoryTable`
[INFO] [stdout] 38 | pub struct ImportDirectoryTable {
[INFO] [stdout]    |            -------------------- `ImportDirectoryTable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pe/section.rs:37:55
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(Debug, PartialEq, Clone, Default, Serialize, Deserialize)]
[INFO] [stdout]    |                                                       ^----------
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       `Deserialize` is not local
[INFO] [stdout]    |                                                       move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ImportDirectoryTable`
[INFO] [stdout] 38 | pub struct ImportDirectoryTable {
[INFO] [stdout]    |            -------------------- `ImportDirectoryTable` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.89s
[INFO] [stderr] crater-edition-check: all finished
[INFO] running `Command { std: "docker" "inspect" "85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf", kill_on_drop: false }`
[INFO] [stdout] 85d6244fc1e918dd722d07795c9817278074a6e4a0553171c56774bc6cc13ebf
